import { post, get } from '@/utils/request'

/**
 * 加载项目数据
 */
export function loadProjectData (data) {
	return post('/htnweapp/getHsmwItemList', Object.assign({
		pageNode: 0,
		pageSize: 20,
		orderByType: 1, // 1. 月完成方量倒序 2. 项目创建时间倒序 3. 总完成付方量倒序
		requestData: {}
	}, data))
}

/**
 * 创建项目
 */
export function createProject (data) {
	return post('/htnweapp/saveOrUpdateItemInfo', Object.assign({
		name: null,
		lng: null,
		lat: null,
		remark: null,
		positionDetail: null,
		constructionUnitId: null,
		constructionUnitName: null
	}, data))
}

/**
 * 更新项目
 */
export function updateProject (data) {
	return post('/htnweapp/saveOrUpdateItemInfo', Object.assign({
		id: null,
		name: null,
		lng: null,
		lat: null,
		remark: null,
		constructionUnitId: null,
		constructionUnitName: null
	}, data))
}

/**
 * 移除项目
 */
export function deleteProject (data) {
	return post('/htnweapp/removeItemInfo', Object.assign({}, {
		itemId: null
	}, data))
}


/**
 * 获取项目明细
 */
export function getProject (id) {
	return get('/htnweapp/getItemSimpleInfo', {
		itemId: id
	})
}

/**
 * 加载项目联系人数据
 */
export function loadProjectLinkmanData (data) {
	return get('/htnweapp/getLinkListByItemId', Object.assign({
		itemId: null
	}, data))
}

/**
 * 获取项目联系人数据
 */
export function getProjectLinkman (data) {
	const { itemId, linkmanId } = data
	return get('/htnweapp/getLinkListByItemId', {
		itemId
	}).then(rs => {
		return (rs || []).find(v => v.id === linkmanId)
	})
}

/**
 * 创建项目联系人
 */
export function createProjectLinkman (data) {
	return post('/htnweapp/saveOrUpdateItemLinkman', Object.assign({
		itemId: null,
		itemName: null,
		name: null,
		phoneNum: null,
		remark: null
	}, data))
}

/**
 * 编辑项目联系人
 */
export function updateProjectLinkman (data) {
	return post('/htnweapp/saveOrUpdateItemLinkman', Object.assign({
		id: null,
		itemId: null,
		itemName: null,
		name: null,
		phoneNum: null,
		remark: null
	}, data))
}

/**
 * 删除项目联系人
 */
export function deleteProjectLinkman (data) {
	return post('/htnweapp/removeItemLinkman', Object.assign({
		id: null
	}, data))
}
